#ifndef SQLDAO_H
#define SQLDAO_H

#include <QString>
#include <QSql>
#include <QSqlDatabase>
#include <QDebug>
#include <QSqlError>

#include "../common/singleton.h"

/**
 * @brief The SqlDao class
 * @brief 数据接口层
 */
class SqlDao
{
private:
    struct SqlDaoDb{
        QSqlDatabase db;

        inline SqlDaoDb()
            : db(QSqlDatabase::addDatabase("QSQLITE"))
        {
            db.setDatabaseName("chatroom.db");
        }

        inline bool open(){
            if(!db.isOpen()){
                if(!db.open()) qDebug() << db.lastError().text();
            }
            return db.isOpen();
        }

        inline void close(){ db.close(); }
    };
public:
    SqlDao();

    static bool insertUser(const QString& username, const QString& password);
    static QString selectUser(const QString& username);
};

#endif // SQLDAO_H
